package fun.boomcat.luckyhe.mirai.plugin.command.utils;

import net.mamoe.mirai.console.command.CommandManager;

public class ReplyHelpString {
    public static String helpStr(String primaryName, String[] secondaryNames) {
//        reply 指令帮助

        StringBuilder helpStringBuilder = new StringBuilder();
        String commandPrefix = CommandManager.INSTANCE.getCommandPrefix();

        helpStringBuilder.append(commandPrefix).append(primaryName).append("指令 ");
        if (secondaryNames.length != 0) {
            helpStringBuilder.append("别名：");
            for (String secondaryName : secondaryNames) {
                helpStringBuilder.append(commandPrefix).append(secondaryName).append(" ");
            }
        }
        helpStringBuilder.append("\n");

        helpStringBuilder.append(commandPrefix).append(primaryName).append(" add（别名：添加）    申请添加一条回复\n");
        helpStringBuilder.append(commandPrefix).append(primaryName).append(" del（别名：删除）    删除一条回复\n");
        helpStringBuilder.append(commandPrefix).append(primaryName).append(" delid（别名：回复号删除）    通过回复号删除回复\n");
        helpStringBuilder.append(commandPrefix).append(primaryName).append(" list（别名：我的）    查看我添加过的回复\n");
        helpStringBuilder.append(commandPrefix).append(primaryName).append(" list -d    查看我添加过的回复（不包括已删除）");

        return helpStringBuilder.toString();
    }

    public static String addHelpStr(String primaryName, String[] secondaryNames) {
//        reply add 指令帮助

        StringBuilder helpStringBuilder = new StringBuilder();
        String commandPrefix = CommandManager.INSTANCE.getCommandPrefix();

        helpStringBuilder.append(commandPrefix).append(primaryName).append(" add");

        helpStringBuilder.append("\n");

        helpStringBuilder.append("-t --type <类型>    指定回复类型，有：完全匹配(cm)、模糊匹配(fm)，正则(re)，正则替换(rr)\n");
        helpStringBuilder.append("-k --keyword <关键字>    指定关键词或被替换字符串\n");
        helpStringBuilder.append("-r --reply <回复>   指定回复内容或替换内容\n");
        helpStringBuilder.append("\n");
        helpStringBuilder.append("请以\\s代替空格，以\\n代替换行\n");
        helpStringBuilder.append("提交后请等待审核，审核通过后即可使用\n");
        helpStringBuilder.append("暂不支持非纯文本哦");
        return helpStringBuilder.toString();
    }

    public static String addExampleStr(String primaryName) {
//        reply add 指令示例

        StringBuilder exampleStringBuilder = new StringBuilder();
        String commandPrefix = CommandManager.INSTANCE.getCommandPrefix();

        exampleStringBuilder.append("例：");
        exampleStringBuilder.append(commandPrefix);
        exampleStringBuilder.append(primaryName);
        exampleStringBuilder.append(" add -t cm -k 你好\\s我好 -r 大家好\\n你们好\n");
        exampleStringBuilder.append("\n则收到消息：\n你好 我好\n\n回复：\n大家好\n你们好");

        return exampleStringBuilder.toString();
    }

    public static String delHelpStr(String primaryName, String[] secondaryNames) {
//        reply del 指令帮助

        StringBuilder helpStringBuilder = new StringBuilder();
        String commandPrefix = CommandManager.INSTANCE.getCommandPrefix();

        helpStringBuilder.append(commandPrefix).append(primaryName).append(" del");

        helpStringBuilder.append("\n");

        helpStringBuilder.append("-t --type <类型>    指定回复类型，有：完全匹配(cm)、模糊匹配(fm)，正则(re)，正则替换(rr)\n");
        helpStringBuilder.append("-k --keyword <关键字>    指定关键词或被替换字符串\n");
        helpStringBuilder.append("-r --reply <回复>   指定回复内容或替换内容\n");
        helpStringBuilder.append("\n");
        helpStringBuilder.append("请以\\s代替空格，以\\n代替换行\n");
        helpStringBuilder.append("提交后立即删除，");
        helpStringBuilder.append("暂不支持非纯文本哦");
        return helpStringBuilder.toString();
    }

    public static String delExampleStr(String primaryName) {
//        reply del 指令示例
        StringBuilder exampleStringBuilder = new StringBuilder();
        String commandPrefix = CommandManager.INSTANCE.getCommandPrefix();

        exampleStringBuilder.append("例：");
        exampleStringBuilder.append(commandPrefix);
        exampleStringBuilder.append(primaryName);
        exampleStringBuilder.append(" del -t cm -k 你好\\s我好 -r 大家好\\n你们好");

        return exampleStringBuilder.toString();
    }

    public static String delByIdHelpStr(String primaryName) {
//        reply delid 指令示例

        String commandPrefix = CommandManager.INSTANCE.getCommandPrefix();
        return commandPrefix + primaryName + " delid <回复号1> [回复号2] [回复号3] …    删除指定回复号自动回复";
    }
}
